]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
panel: Ignore shell-shows-app-menu setting
authorFlorian Müllner <fmuellner@gnome.org>
Thu, 4 Oct 2018 14:52:34 +0000 (16:52 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Wed, 6 Feb 2019 17:26:56 +0000 (18:26 +0100)
The GtkSettings was originally introduced to inform applications about
the desktop shell's capabilities, but users soon started to use it to
force GTK+ to show the app menu inside the application. We eventually
caved and also handled the setting ourselves to hide the in-shell app
menu to allow users to "move" it.

But now the remote app menu is in the process of being retired[0], and
will be replaced with a simple indicator that cannot be moved, so
stop following the GtkSetting.

[0] https://gitlab.gnome.org/GNOME/Initiatives/wikis/App-Menu-Retirement

https://gitlab.gnome.org/GNOME/gnome-shell/issues/624

js/ui/panel.js

index 6457f54dbccb9c50148a8efe2eebcbaf582fe810..f9fe29ede53f2b241283d5d70694f9d159182020 100644 (file)
@@ -122,14 +122,11 @@ var AppMenuButton = GObject.registerClass({
         this._arrow = PopupMenu.arrowIcon(St.Side.BOTTOM);
         this._container.add_actor(this._arrow);
 
-        this._visible = this._gtkSettings.gtk_shell_shows_app_menu &&
-                        !Main.overview.visible;
+        this._visible = !Main.overview.visible;
         if (!this._visible)
             this.hide();
         this._overviewHidingId = Main.overview.connect('hiding', this._sync.bind(this));
         this._overviewShowingId = Main.overview.connect('showing', this._sync.bind(this));
-        this._showsAppMenuId = this._gtkSettings.connect('notify::gtk-shell-shows-app-menu',
-                                                         this._sync.bind(this));
 
         this._stop = true;
 
@@ -305,12 +302,7 @@ var AppMenuButton = GObject.registerClass({
             }
         }
 
-        let shellShowsAppMenu = this._gtkSettings.gtk_shell_shows_app_menu;
-        Meta.prefs_set_show_fallback_app_menu(!shellShowsAppMenu);
-
-        let visible = (this._targetApp != null &&
-                       shellShowsAppMenu &&
-                       !Main.overview.visibleTarget);
+        let visible = (this._targetApp != null && !Main.overview.visibleTarget);
         if (visible)
             this.fadeIn();
         else
@@ -383,10 +375,6 @@ var AppMenuButton = GObject.registerClass({
             Main.overview.disconnect(this._overviewShowingId);
             this._overviewShowingId = 0;
         }
-        if (this._showsAppMenuId > 0) {
-            this._gtkSettings.disconnect(this._showsAppMenuId);
-            this._showsAppMenuId = 0;
-        }
         if (this._switchWorkspaceNotifyId > 0) {
             global.window_manager.disconnect(this._switchWorkspaceNotifyId);
             this._switchWorkspaceNotifyId = 0;